package junit.swingui;
import java.awt.Component;
import javax.swing.JTextArea;
import junit.framework.TestFailure;
import junit.runner.BaseTestRunner;
import junit.runner.FailureDetailView;
/**
* A view that shows a stack trace of a failure
*/
class DefaultFailureDetailView implements FailureDetailView {
JTextArea fTextArea;
/**
* Returns the component used to present the trace
*/
public Component getComponent() {
if (fTextArea == null) {
fTextArea= new JTextArea();
fTextArea.setRows(5);
fTextArea.setTabSize(0);
fTextArea.setEditable(false);
}
return fTextArea;
}
/**
* Shows a TestFailure
*/
public void showFailure(TestFailure failure) {
fTextArea.setText(BaseTestRunner.getFilteredTrace(failure.thrownException()));
fTextArea.select(0, 0);
}
public void clear() {
fTextArea.setText("");
}
}